home *** CD-ROM | disk | FTP | other *** search
/ Aminet 4 / Aminet 4 - November 1994.iso / aminet / dev / gcc / libnix.lha / gnu / lib / libnix / sources.lha / headers / makemake < prev    next >
Encoding:
Text File  |  1994-04-24  |  1.8 KB  |  98 lines

  1. /* makemake produziert ein makefile */
  2.  
  3. PARSE ARG options
  4.  
  5. IF ~SHOW("L","rexxsupport.library") THEN
  6. DO
  7.   IF ~ADDLIB("rexxsupport.library",0,-30,34) THEN
  8.   DO
  9.     ECHO "No rexxsupport.library"
  10.     RETURN 20
  11.   END
  12. END
  13.  
  14. alldirs="00"x
  15. allfiles=""
  16.  
  17. DO WHILE alldirs~==""
  18.   PARSE VAR alldirs dirname "00"x alldirs
  19.   IF dirname~=="" THEN
  20.     dirname=dirname"/"
  21.   filelist=SHOWDIR(dirname,"File","00"x)
  22.   DO WHILE filelist~==""
  23.     PARSE VAR filelist filename "00"x filelist
  24.     allfiles=allfiles||dirname||filename"00"x
  25.   END
  26.   dirlist=SHOWDIR(dirname,"Dir","00"x)
  27.   DO WHILE dirlist~==""
  28.     PARSE VAR dirlist subdirname "00"x dirlist
  29.     alldirs=alldirs||dirname||subdirname"00"x
  30.   END
  31. END
  32.  
  33. count=0
  34.  
  35. DO WHILE allfiles~==""
  36.   parse var allfiles filename "00"x allfiles
  37.   IF RIGHT(filename,2)==".c" THEN
  38.   DO
  39.     files.count=LEFT(filename,LENGTH(filename)-2)
  40.     count=count+1
  41.   END
  42. END
  43.  
  44. scount=0
  45.  
  46. DO FOREVER
  47.   parse var options wildcard options
  48.   IF wildcard=="" THEN
  49.     BREAK
  50.  
  51.   IF LEFT(wildcard,1)=="*" THEN
  52.   DO i=0 TO count-1
  53.     IF UPPER(RIGHT(wildcard,LENGTH(wildcard)-1))==,
  54.        UPPER(RIGHT(files.i,LENGTH(wildcard)-1))&,
  55.        files.i~=="" THEN
  56.     DO
  57.       sfiles.scount=files.i
  58.       scount=scount+1
  59.       files.i=""
  60.     END
  61.   END
  62.   IF RIGHT(wildcard,1)=="*" THEN
  63.   DO i=0 TO count-1
  64.     IF UPPER(LEFT(wildcard,LENGTH(wildcard)-1))==,
  65.        UPPER(LEFT(files.i,LENGTH(wildcard)-1))&,
  66.        files.i~=="" THEN
  67.     DO
  68.       sfiles.scount=files.i
  69.       scount=scount+1
  70.       files.i=""
  71.     END
  72.   END
  73.   DO i=0 TO count-1
  74.     IF UPPER(wildcard)==UPPER(files.i) THEN
  75.     DO
  76.       sfiles.scount=files.i
  77.       scount=scount+1
  78.       files.i=""
  79.     END
  80.   END
  81. END
  82.  
  83. ECHO "# Machine-generated makefile- do not edit !"
  84.  
  85. ECHO "OBJECTS=\"
  86. DO i=0 TO scount-1
  87.    ECHO sfiles.i".o\"
  88. END
  89. ECHO
  90.  
  91. ECHO "BOBJECTS=\"
  92. DO i=0 TO scount-1
  93.   ECHO sfiles.i".bo\"
  94. END
  95. ECHO
  96.  
  97. ADDRESS COMMAND "Type submake"
  98.